home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 2 / Amiga Tools 2.iso / tex / macros / source / packages / epic / picman.tex / node2_mn.html < prev    next >
Text File  |  1995-03-15  |  4KB  |  87 lines

  1.  
  2. <H1><A ID="SECTION00020000000000000000">
  3. Introduction</A>
  4. </H1>
  5.  
  6. <P>
  7. L<SUP><SMALL>A</SMALL></SUP>T<SMALL>E</SMALL>X provides a reasonably powerful picture drawing capability.
  8. There are many useful commands provided although the
  9. user-interface has room for improvement. The commands described
  10. in this document aim to achieve a simpler and more powerful interface.
  11.  
  12. <P>
  13. Most picture drawing commands require explicit specification of coordinates
  14. for every <#38#><I>object</I><#38#>. Although explicit coordinates is the basis of the
  15. picture environment, it is possible to provide higher level commands which
  16. reduce the amount of coordinates that need to be manually calculated. There
  17. are basically two approaches that can be taken in designing such commands:
  18.  
  19. <UL>
  20. <LI>providing ability to specify a set of objects such that
  21. the entire set can be plotted by specifying one or two coordinate pairs;
  22. <tex2html_verb_mark>1<tex2html_verb_mark> command falls into this category.
  23.  
  24. <P>
  25. </LI>
  26. <LI>providing commands that do most of the computation internally and
  27. require simple coordinate pairs to be specified; <tex2html_verb_mark>2<tex2html_verb_mark> command is
  28. one example of this approach.
  29.  
  30. <P>
  31. </LI>
  32. </UL>
  33.  
  34. <P>
  35. The obvious advantage of having commands that fall into the above categories
  36. is that not only they are easier to specify initially, but any subsequent
  37. modification to the layout requires minimal recalculations. For instance, to
  38. modify the coordinates in a <tex2html_verb_mark>3<tex2html_verb_mark> statement plotting <I>n</I> objects
  39. requires recalculation of at most 4 coordinates, whereas the equivalent
  40. <tex2html_verb_mark>4<tex2html_verb_mark> statements may require upto 2<I>n</I> calculations and/or
  41. recalculations.
  42.  
  43. <P>
  44. Another frequently used command, <tex2html_verb_mark>5<tex2html_verb_mark> has severe limitations and
  45. drawbacks. The
  46. arguments that the <tex2html_verb_mark>6<tex2html_verb_mark> command expects are very non-intuitive and
  47. requires extensive calculations --- often the thought process in writing a
  48. <tex2html_verb_mark>7<tex2html_verb_mark> command involves:
  49.  
  50. <OL>
  51. <LI>calculating the coordinates of the two end-points.
  52. </LI>
  53. <LI>calculating the horizontal and vertical distance.
  54. </LI>
  55. <LI>figuring out if the desired slope is available and if not then
  56. repeating steps 1 and 2 till a satisfactory slope is achieved.
  57. </LI>
  58. <LI>translating above into an (x,y) pair for specifying a slope and a
  59. horizontal distance for specifying the length of the line.
  60. </LI>
  61. </OL>
  62.  
  63. <P>
  64. Above mechanism is a cumbersome way of specifying a line. It also has the
  65. drawback that the length of the shortest line of different slopes that
  66. can be drawn is different; for instance, assuming <tex2html_verb_mark>8<tex2html_verb_mark>,
  67. <tex2html_verb_mark>9<tex2html_verb_mark> is the shortest line of the given slope that can be
  68. drawn; it is considerably longer than the available line segment of this
  69. slope --- 60.8pt rather than about 11pt. It should be emphasized that this
  70. is a drawback of only the implementation of the <tex2html_verb_mark>10<tex2html_verb_mark>
  71. command and is not an inherent limitation. This report describes a few line
  72. drawing commands all of which overcome such a drawback, while providing a
  73. simpler syntax. They all take, as arguments, only the coordinates of the
  74. end-points, thus eliminating all other steps involved in specifying a
  75. line; it also seems to be a natural way of perceiving a line in an
  76. environment where all the work is done in terms of coordinates.
  77.  
  78. <P>
  79. A few new commands are developed and described in this report. They provide
  80. a simpler syntax and a higher-level user-interface. Also some of the commands
  81. permit one to plot objects that were previously cumbersome or difficult to
  82. plot. All existing commands still remain accessible. With the new
  83. commands it should now be possible to make pictures with less effort and
  84. make more sophisticated pictures than was possible earlier.
  85.  
  86. <P>
  87.